Numerik

Ingenieurinformatik Teil 2, Sommersemester 2026

David Straub

Numerik – D. Straub

Gliederung

  1. Einführung in Matlab
  2. Arbeiten mit Arrays
  3. Funktionen und Kontrollstrukturen
  4. Analysis
  5. Lineare Algebra
  6. Differentialgleichungen 👈
  7. Einführung in Simulink
Numerik – D. Straub

Fahrplan: Differentialgleichungen

Einheit 1 – Heute
→ Motivation und Herleitung am Ingenieurbeispiel
→ Begriffe: Ordnung, Anfangswertproblem
→ Analytische vs. numerische Lösung
→ Euler'sches Polygonzugverfahren in Matlab

Einheit 2
→ Standardform für numerische Verfahren
→ Numerische Lösungsverfahren
→ Lösung in Matlab

Einheit 3
→ Anwendungen

Numerik – D. Straub

Motivation

Numerik – D. Straub

Schnellladen einer Batteriezelle

Beim Schnellladen steigt die Temperatur – aber wie schnell, und wie hoch?

Wärmeleistung durch Innenwiderstand:

PVerlust=I2RinnenP_\text{Verlust} = I^2 \cdot R_\text{innen}

Größe Wert
CthC_\text{th} (Wärmekapazität) 100J/K100\,\text{J/K}
RinnenR_\text{innen} 0,05Ω0{,}05\,\Omega
II 50A50\,\text{A}P=125WP = 125\,\text{W}
T0T_0 25°C25\,°\text{C}
Numerik – D. Straub

Fall 1: Konstanter Strom, keine Wärmeabgabe

Die gesamte Verlustleistung heizt die Zelle auf:

CthT˙=PVerlust=constC_\text{th}\,\dot{T} = P_\text{Verlust} = \text{const}

T˙\dot{T} ist konstant → direktes Integral:

T(t)=T0+PVerlustCthtT(t) = T_0 + \frac{P_\text{Verlust}}{C_\text{th}}\,t

Mit den Zahlenwerten: TT steigt um 1,25K/s1{,}25\,\text{K/s} – nach 60 s bereits +75K+75\,\text{K}.

Realistisch?

Numerik – D. Straub

Fall 2: Variabler Strom I(t)I(t)

Ein reales Ladeprofil: I(t)I(t) ist nicht konstant.

CthT˙=P(t)=I(t)2RC_\text{th}\,\dot{T} = P(t) = I(t)^2 \cdot R

P(t)P(t) ist nun eine gemessene Kurve → T(t)=T0+1Cth0tP(τ)dτT(t) = T_0 + \dfrac{1}{C_\text{th}} \int_0^t P(\tau)\,d\tau

Das kennen wir: numerisch mit trapz.

T_end = T0 + trapz(t, P) / C_th

Aber: wir erhalten nur den Endwert oder müssen T(t)T(t) mühsam schrittweise berechnen.

Und noch etwas fehlt…

Numerik – D. Straub

Fall 3: Wärmeabgabe dazu

Die Zelle gibt Wärme an die Umgebung ab:

Pab=λ(TT)P_\text{ab} = \lambda\,(T - T_\infty)

Energiebilanz: ein - aus:

CthT˙=PVerlustλ(TT)C_\text{th}\,\dot{T} = P_\text{Verlust} - \lambda\,(T - T_\infty)

Problem: PabP_\text{ab} hängt von T(t)T(t) selbst ab – der Wert den wir suchen!

dtgeht nicht mehr\int \ldots\,dt \quad \text{geht nicht mehr}

Wir brauchen etwas Neues: eine Differentialgleichung.

Numerik – D. Straub

Die Differentialgleichung der Batteriezelle

CthT˙=Pλ(TT)\boxed{C_\text{th}\,\dot{T} = P - \lambda\,(T - T_\infty)}

Größe Bedeutung Wert
CthC_\text{th} Wärmekapazität 100J/K100\,\text{J/K}
λ\lambda Wärmeübergangskoeffizient 2W/K2\,\text{W/K}
P=I2RP = I^2 R Verlustleistung 125W125\,\text{W}
TT_\infty Umgebungstemperatur 25°C25\,°\text{C}
T0T_0 Starttemperatur 25°C25\,°\text{C}
Numerik – D. Straub

Gleichung vs. Differentialgleichung

Algebraische Gleichung – Lösung ist eine Zahl:

2x23=0x=±1,52x^2 - 3 = 0 \quad \Rightarrow \quad x = \pm\sqrt{1{,}5}

Differentialgleichung – Lösung ist eine Funktion:

CthT˙=Pλ(TT)T(t)=?C_\text{th}\,\dot{T} = P - \lambda\,(T - T_\infty) \quad \Rightarrow \quad T(t) = \,?

Die gesuchte Funktion T(t)T(t) muss die Gleichung für alle tt erfüllen.

Numerik – D. Straub

Analytische Lösung

Numerik – D. Straub

Analytische Lösung: Ansatz

Die Batterie-DGL lässt sich umschreiben:

T˙=λCthT+P+λTCth\dot{T} = -\frac{\lambda}{C_\text{th}}\,T + \frac{P + \lambda T_\infty}{C_\text{th}}

Ansatz: T(t)=A+Beαt\quad T(t) = A + B\,e^{\alpha t}

Einsetzen liefert α=λCth\alpha = -\dfrac{\lambda}{C_\text{th}} und die Konstante AA aus dem Gleichgewicht.

Mit Anfangsbedingung T(0)=T0T(0) = T_0:

T(t)=T+Pλ+(T0TPλ)eλCthtT(t) = T_\infty + \frac{P}{\lambda} + \left(T_0 - T_\infty - \frac{P}{\lambda}\right) e^{-\frac{\lambda}{C_\text{th}}\,t}

Numerik – D. Straub

Gleichgewichtstemperatur

Für tt \to \infty ändert sich TT nicht mehr: T˙=0\quad \dot{T} = 0

0=Pλ(TT)T=T+Pλ0 = P - \lambda\,(T^* - T_\infty) \quad \Rightarrow \quad T^* = T_\infty + \frac{P}{\lambda}

Mit den Tabellenwerten:

T=25+1252=87,5°CT^* = 25 + \frac{125}{2} = 87{,}5\,°\text{C}

Knapp unter der typischen Grenztemperatur – bei doppeltem Strom wäre T=150°CT^* = 150\,°\text{C}.

Numerik – D. Straub

✍️ Aufgabe: Analytische Lösung plotten

Plotten Sie die analytische Lösung der Batterie-DGL:

T(t)=T+Pλ+(T0TPλ)eλCthtT(t) = T_\infty + \frac{P}{\lambda} + \left(T_0 - T_\infty - \frac{P}{\lambda}\right) e^{-\frac{\lambda}{C_\text{th}}\,t}

Verwenden Sie die Parameterwerte aus der Tabelle. Plotten Sie außerdem:

  • die Gleichgewichtstemperatur TT^* als horizontale Linie
  • die Lösung für Cth=50C_\text{th} = 50 und Cth=200C_\text{th} = 200 (sonst gleiche Parameter)

Was beobachten Sie?

Numerik – D. Straub

Begriffe

Numerik – D. Straub

Ordnung einer Differentialgleichung

Die Ordnung ist die höchste vorkommende Ableitung.

Gleichung Ordnung
T˙=Pλ(TT)\dot{T} = P - \lambda(T-T_\infty) 1
mx¨+kx=0m\ddot{x} + kx = 0 2
EIx=q(x)EI\, x'''' = q(x) 4

Bei einer DGL nn-ter Ordnung sind nn Anfangsbedingungen nötig, um die Lösung eindeutig festzulegen.

Numerik – D. Straub

Anfangswertproblem

Anfangswertproblem (AWP): Alle Bedingungen sind zum selben Zeitpunkt t0t_0 gegeben.

CthT˙=Pλ(TT),T(0)=T0C_\text{th}\,\dot{T} = P - \lambda(T-T_\infty), \qquad T(0) = T_0

mx¨+kx=0,x(0)=x0,x˙(0)=v0m\ddot{x} + kx = 0, \qquad x(0) = x_0,\quad \dot{x}(0) = v_0

Randwertproblem: Bedingungen an verschiedenen Stellen (z.B. Balken mit festen Enden) – kommt hier nicht vor.

Numerik – D. Straub

Gewöhnliche vs. partielle DGL

Gewöhnliche DGL (ODE): eine unabhängige Variable

CthT˙(t)=C_\text{th}\,\dot{T}(t) = \ldots

Partielle DGL (PDE): mehrere unabhängige Variablen

ρcTt(x,y,z,t)=λ2T\rho c\,\frac{\partial T}{\partial t}(x,y,z,t) = \lambda\,\nabla^2 T

→ Wärmeleitung innerhalb eines Körpers: Temperatur hängt von Ort und Zeit ab.

In dieser Vorlesung behandeln wir ausschließlich ODEs.

Numerik – D. Straub

Numerische Lösung

Numerik – D. Straub

Wann versagt die analytische Lösung?

Die Batterie-DGL mit konstantem Strom ist analytisch lösbar.

Was aber, wenn der Ladestrom zeitveränderlich ist – z.B. ein gemessenes Ladeprofil I(t)I(t)?

CthT˙=I(t)2Rλ(TT)C_\text{th}\,\dot{T} = I(t)^2 \cdot R - \lambda\,(T - T_\infty)

→ Keine geschlossene analytische Lösung mehr möglich.

Numerische Methoden liefern stattdessen eine Näherungslösung als Zahlenfolge:

t0,t1,t2,T0,T1,T2,t_0,\, t_1,\, t_2,\, \ldots \quad \longrightarrow \quad T_0,\, T_1,\, T_2,\, \ldots

Numerik – D. Straub

Euler'sches Polygonzugverfahren

Idee: Die Ableitung T˙\dot{T} ist bekannt – sie steht auf der rechten Seite der DGL.

Ersetze die Ableitung durch einen Differenzenquotienten:

T˙T(t+Δt)T(t)Δt\dot{T} \approx \frac{T(t + \Delta t) - T(t)}{\Delta t}

Umgestellt: der nächste Wert ergibt sich aus dem aktuellen:

T(t+Δt)=T(t)+T˙(t)rechte SeiteΔtT(t + \Delta t) = T(t) + \underbrace{\dot{T}(t)}_{\text{rechte Seite}} \cdot \Delta t

In Matlab: T(n+1) = T(n) + dT_dt * dt

Numerik – D. Straub

Euler'sches Polygonzugverfahren in Matlab: Schema

Anfangswertproblem: y˙=f(t,y),y(t0)=y0\quad \dot{y} = f(t, y), \quad y(t_0) = y_0

yn+1=yn+f(tn,yn)Δty_{n+1} = y_n + f(t_n,\, y_n) \cdot \Delta t

t = t0 : dt : tend
y = zeros(size(t))
y(1) = y0

for n = 1 : length(t)-1
    dy_dt  = f( t(n), y(n) )      % rechte Seite auswerten
    y(n+1) = y(n) + dy_dt * dt   % Euler-Schritt
end
Numerik – D. Straub

✍️ Aufgabe: Euler-Verfahren

Implementieren Sie das Euler-Verfahren für die Batterie-DGL. Wie lautet f(t,y)f(t, y) in diesem Fall?

(a) Vergleichen Sie die numerische Lösung mit der analytischen in einem Plot.

(b) Variieren Sie die Schrittweite dt: 10s10\,\text{s}, 100s100\,\text{s}, 500s500\,\text{s}.
Was passiert mit der Genauigkeit?

(c) Ersetzen Sie PP durch ein abklingendes Ladeprofil:

I(t)=I0et/τ,P(t)=RI(t)2I(t) = I_0\,e^{-t/\tau}, \quad P(t) = R\cdot I(t)^2

mit I0=50AI_0 = 50\,\text{A}, τ=1800s\tau = 1800\,\text{s}, R=0,05ΩR = 0{,}05\,\Omega.
Vergleichen Sie mit der Lösung bei konstantem P=RI02P = R I_0^2.

Numerik – D. Straub

Zusammenfassung

  • Eine Differentialgleichung beschreibt die zeitliche Änderung einer Größe
  • Die Lösung ist eine Funktion, keine Zahl
  • Analytische Lösungen existieren nur für einfache Sonderfälle
  • Für den allgemeinen Fall: numerische Lösungsverfahren
  • Das Euler'sche Polygonzugverfahren ist die einfachste numerische Methode
Numerik – D. Straub